#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "msg_queue.h"  // 使用服务器相同的消息队列头文件

int main() {
    // 要发送的JSON数据
    const char* json_data = 
        "{\"data\":[{\"key\":1,\"name\":\"lamp\",\"data\":\"true\"}]}";
    
    // 初始化消息队列（使用与服务器相同的名称和配置）
    int msg_id = msg_queue_init(MSG_QUEUE_NAME);
    if (msg_id == -1) {
        perror("Failed to initialize message queue");
        return EXIT_FAILURE;
    }
    printf("Connected to message queue (id: %d)\n", msg_id);

    // 准备消息结构
    struct Msg msg;
    msg.msg_type = MSG_QUEUE_TYPE;  // 使用与服务器相同的消息类型
    strncpy(msg.buf, json_data, sizeof(msg.buf) - 1);

    // 发送消息到队列
    if (msg_queue_send(msg_id, &msg, strlen(json_data), 0) == -1) {
        perror("Failed to send message");
        return EXIT_FAILURE;
    }
    printf("Successfully sent JSON data to message queue:\n%s\n", json_data);

    return 0;
}